/**
 * Fichier PostInitialisation.java : Définition de classe
 * fr.unice.gnpt.core.init.PostInitialisation : Après l'initialisation...
 * 
 * Auteurs : Groupe GNPT : Gastinel, Nicolas, Pellegrino, Trovato
 */
package fr.unice.gnpt.core.init;

import fr.unice.gnpt.core.Cours;
import fr.unice.gnpt.core.Enseignant;
import fr.unice.gnpt.core.Service;
import fr.unice.gnpt.core.dao.DaoCours;
import fr.unice.gnpt.core.dao.DaoEnseignant;
import fr.unice.gnpt.core.dao.DaoException;
import fr.unice.gnpt.core.dao.DaoService;
import fr.unice.gnpt.core.dao.factory.FabriqueDao;

/**
 * Classe de post initialisation.
 * <p>
 * Cette classe n'a aucune utilisé pour l'application. Elle permet aux
 * développeur de tester des données entre l'initialisation et le lancement de
 * l'interface graphique.
 * 
 * @author gnpt
 * @version 0.0.1
 */
public class PostInitialisation {
	/**
	 * Constructeur par défaut
	 */
	public PostInitialisation() {
		super();
	}

	/**
	 * Méthode principale de la classe pour lui demander de faire ce qu'elle a a
	 * faire.
	 */
	public void doStuff() {
		//this.dumpDonnees();
	}
	
	/**
	 * Méthode d'affichage de toutes les données de la base.
	 */
	protected void dumpDonnees() {
		try {
			FabriqueDao fab = FabriqueDao.getFabriqueDao();
			System.err.println("== COURS ==");
			DaoCours daoc = fab.getDaoCours();
			daoc.getConnexion().ouvrir();
			for (Cours c : daoc.findAll()) {
				System.out.println(c.toString() + ": " + c.getEnseignements());
			}
			daoc.getConnexion().fermer();
			System.err.println("== ENSEIGNANTS ==");
			DaoEnseignant daoe = fab.getDaoEnseignant();
			daoe.getConnexion().ouvrir();
			for (Enseignant e : daoe.findAll()) {
				System.out.println(e.toString() + ": " + e.getEnseignements());
			}
			daoe.getConnexion().fermer();
			System.err.println("== SERVICES ==");
			DaoService daos = fab.getDaoService();
			daos.getConnexion().ouvrir();
			for (Service s : daos.findAll()) {
				System.out.println(s.toString());
			}
			daos.getConnexion().fermer();
			System.err.println("== FIN DUMP BDD ==");
		} catch (DaoException e) {
			return;
		}
	}

}
